home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Nebula 1
/
Nebula One.iso
/
Misc
/
PowerGloveInspector
/
Source
/
PowerGlove.h
< prev
next >
Wrap
Text File
|
1995-06-12
|
2KB
|
77 lines
/* default sample rate, in the asm code, is 100msec intervals (10 per second)
*
* uses powerglove.lod file (in current directlry) if avail
* otherwise it uses powerglove.snd in the executable
*
*/
/* Generated by Interface Builder */
#import <objc/Object.h>
#import <mach/cthreads.h>
/* was: #include <cthreads.h> */
#import <dpsclient/dpsclient.h> /* dpsaddport ... createcontext*/
@interface PowerGlove:Object
{
DPSContext ourContext; /* created so we can do mouse dinking*/
port_t cmd_port; /* we need this to change rates */
int feedMouse; /* not used now */
int evs_dev; /* used when feeding the mouse */
int DSPRunning; /* number of times started */
/* next two used whenever the data has changed
* since the last time someone got the values*/
BOOL newPosition; /* glove movement */
BOOL newFinger; /* finger movement */
char raw_data[9]; /* the 9 bytes that are the raw data */
/* really only 8 bytes */
/* amount glove has to move for newFinger to be true */
char x_hyst,y_hyst,z_hyst;
}
- init;
- free;
/* public methods */
- startDSP:sender; /* glove sends to self in init? */
- stopDSP:sender;
/* methods that change the rate the PowerGlove class samples the Glove at */
- feedGloveToMouse:(BOOL)flag; /* try and feed the glove to ev drive*/
- (BOOL)dspIsRunning; /* are we really running */
- (BOOL)feedingMouse; /* not working yet */
- (char)getDataByte:(int)bNum; /* access raw_data 1 byte at a time */
/* does not include roll, only x,y,z */
- (BOOL)gloveMoved; /* check if hysteresis overcome */
/* default is 1 (+/-) range is 0-127 */
- setxHyst:(char)x yHyst:(char)y zHyst:(char)z;
- (BOOL)fingerMoved; /* check if any finger movement */
- (int)gloveX;
- (int)gloveY;
- (int)gloveZ;
- (int)gloveRot;
- (int)thumb;
- (int)index;
- (int)middle;
- (int)ring;
- (BOOL)padUp; /* each one individually */
- (BOOL)padDown;
- (BOOL)padLeft;
- (BOOL)padRight;
- (BOOL)aPressed;
- (BOOL)bPressed;
- (BOOL)startPressed;
- (BOOL)selectPressed;
- getDataFromPort; /* should be private */
@end